package com.taokatao.cardmee.api.model;

import com.taokatao.cardmee.api.RespInfo;

import java.io.Serializable;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

public class CardDetailInfo extends RespInfo {
    /**
     * 官方网站
     */
    public String officialWebsite;
    /**
     * 权益标题
     */
    public String rightTitle;
    /**
     * 权益描述
     */
    public String rightDec;
    /**
     * 权益链接
     */
    public String rightUrl;
    /**
     * 优惠券标题
     */
    public String couponName;
    /**
     * 优惠券描述
     */
    public String couponDec;
    /**
     * 优惠券链接
     */
    public String couponUrl;
    /**
     * 主活动标题
     */
    public String bannerName;
    /**
     * 主活动描述
     */
    public String bannerDec;
    /**
     * 主活动链接
     */
    public String bannerUrl;
    /**
     * 权益标签集合
     */
    public List<Tag> hMemberTitleList;
    /**
     * 子活动集合
     */
    public List<Promotion> hMemberBannerSubsetList;


    public String searchKeys;

    public static class Tag implements Serializable {
        public Long id;
        /**
         * 权益标签名称
         */
        public String titleName;
    }

    public static class Promotion implements Serializable {
        /**
         * 子活动图标
         */
        public String bannerImg;
        /**
         * 子活动标题
         */
        public String bannerName;
        /**
         * 子活动描述
         */
        public String bannerDec;
        /**
         * 子活动链接
         */
        public String bannerUrl;
    }


    /**
     * 广告信息集合
     */
    public List<AD> adList;

    public static class AD implements Serializable {
        /**
         * 广告id
         */
        public long id;
        /**
         * 广告标题
         */
        public String adTitle;
        /**
         * 广告链接
         */
        public String adUrl;
        /**
         * 广告封面
         */
        public String adCover;
    }

    /**
     * 通用分类Banner
     */
    public List<Banner> cardBannerList;

    public static class Banner implements Serializable {
        /**
         * banner名称
         */
        public String bannerName;
        /**
         * banner描述
         */
        public String bannerDec;
        /**
         * banner链接地址
         */
        public String bannerUrl;
    }

    /**
     * 商品套餐总剩余次数 , 如果为空，则不是分店可以这样判断
     */
    public Integer productAllNum;
    /**
     * 余额
     */
    public float balance;
    /**
     * 积分
     */
    public int integral;

    /**
     * 商家开通预约的课程数量 大于0就显示
     */
    public int canOrderNum;


    /**
     * 分店联系方式
     * <p>
     * storePhone#storeAdd#longItude#latItude   这4个值后台给了就记录，并且显示。<br>
     * 第二步，定位自身经纬度 ， 结合后台给的 目标地点经纬度 得到 距离 XXKm 显示出来。 完结撒花<br>
     * （如果第二步没有 目标地点经纬度 距离计算失败， 进入第三步）<br>
     * 第三步，通过高德API 得到 一些备胎值（之前第一步的4个值） 补全后台没给的值， 然后重新过一遍第一步 第二步。<br>
     */
    public String storePhone;
    /**
     * 分店联系地址
     */
    public String storeAdd;

    /**
     * 商家分店位置经度
     */
    public String longItude;
    /**
     * 商家分店位置纬度
     */
    public String latItude;

    public List<CourseOrdered> courseOrderedList;

    public static class CourseOrdered {
        /**
         * 课程id
         */
        public long courseId;
        /**
         * 课程名称
         */
        public String courseName;
        /**
         * 老师
         */
        public String teacherName;
        /**
         * 上课时间(14位数字)
         */
        public long classTime;


        public String getDescString() {
            StringBuilder sb = new StringBuilder();
            sb.append(courseName).append("    ");
            sb.append(teacherName).append("    ");
            try {
                SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMddHHmmss");
                Date dateClassTime = sdf1.parse(String.valueOf(classTime));
                SimpleDateFormat sdf2 = new SimpleDateFormat("M月d日 HH:mm");
                String mFormatTime = sdf2.format(dateClassTime);
                sb.append(mFormatTime);
            } catch (Exception e) {
                e.printStackTrace();
            }
            return sb.toString();
        }
    }

    /**
     * 0：表示可以查看详情，
     * 1：表示不能查看详情 默认值为0 <br>
     * 备注---app配置详情链接地址：<br>
     * http://域名:端口/wapServer/bussiness/getOrderedCourseDetails.do?courseId=1&uuid=2
     */
    public int doOrderDetail;

    /**
     * 0：表示该通兑卡可以预约，  1：表示该通兑卡不能预约   默认值为0  <br>
     * 备注---app配置预约链接地址：  <br>
     * http://域名:端口/wapServer/bussiness/goConsumerOrder.do?cardId=1&uuid=2
     */
    public int doConsumerOrder;

    /**
     * 0：表示该分店可以领取优惠券，  1：表示该分店不能领取优惠券 默认值为0  <br>
     * 备注---app配置领取链接地址：  <br>
     * http://域名:端口/wapServer/bussiness/goCouponReceive.do?sid=1&uuid=2
     */
    public int doCouponReceive;

    /**
     * 0：表示可以给该分店评分，  1：表示不能给该分店评分   默认值为0  <br>
     * 备注---app配置评分链接地址： <br>
     * http://域名:端口/wapServer/bussiness/goScore.do?sid=1&uuid=2
     */
    public int doScore;


}
